Integrated media jukebox and physiologic data handling application

ABSTRACT

A method is provided to operate a computer to interoperate with a portable media player. The method includes processing signals provided from the portable media player to the computer that are indicative of whether an accessory has been connected to the portable media player, to determine whether the accessory has been connected to the portable media player. Based on a determination that the accessory has been connected to the portable media player, physiologic data of a user that was provided to the portable media player from a wireless physiologic data gathering device, is received from the portable media player, into the computer, via the accessory.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. patent application Ser. No. ______,filed May 22, 2006, and entitled “ACTIVITY MONITORING SYSTEM”[Att.Dkt.No.: APL1P490P/P4398USP1], which is hereby incorporated byreference herein. This application is also related to U.S. patentapplication Ser. No. ______, filed May 22, 2006, and entitled“COMMUNICATION PROTOCOL FOR USE WITH PORTABLE ELECTRONIC DEVICES”[Att.Dkt.No.: APL1P492/P4400US1], which is hereby incorporated byreference herein.

BACKGROUND OF THE INVENTION

The use of devices to obtain exercise performance information is known.For example, simple mechanical pedometers have been used to obtaininformation relating to walking or running. A typical mechanicalpedometer is a standalone device merely displays an indication of numberof steps taken which, typically at most, can be converted to distancetraveled by multiplying the number of steps taken by an estimatedaverage stride size.

Recently, more sophisticated devices are known. For example, asdescribed in U.S. Pat. No. 6,898,550 (the '550 patent), a foot-mountedunit, including a sensor for sensing motion of the foot of a user, isconfigured to provide motion information-wirelessly—to a wrist-mountedunit. The wrist-mounted unit includes a display for displayinginformation to the user based upon data accumulated by the foot-mountedunit and transmitted wirelessly to the wrist-mounted unit. In addition,as described in the '550 patent, the wrist-mounted unit may be coupledto a computer and/or a network server via a network. The user canoperate software running on the computer and/or the server to analyzereceived data and/or to select operating parameters for thewrist-mounted unit and/or the foot-mounted unit.

The inventors have realized that a media jukebox computer application,including functionality to interact with a portable media player, may besynergistically combined with functionality to handle physiologic datafrom a physiologic data gathering device that is in communication withthe portable media player for providing physiologic data to the portablemedia player.

SUMMARY

A method is provided to operate a computer to interoperate with aportable media player. The method includes processing signals providedfrom the portable media player to the computer that are indicative ofwhether an accessory has been connected to the portable media player, todetermine whether the accessory has been connected to the portable mediaplayer. Based on a determination that the accessory has been connectedto the portable media player, physiologic data of a user that wasprovided to the portable media player from a wireless physiologic datagathering device, is received from the portable media player, into thecomputer, via the accessory.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example of a system, including a portable mediaplayer, generally usable for, among other things, monitoring and/orcontrolling user exercise or other activity or physiology.

FIG. 2. is a flowchart illustrating an example of steps, mostly within ahost computer, to accomplish transfer of physiologic data between aportable media player and a workout data service.

FIG. 3 is a schematic diagram that, while similar to FIG. 1, illustratesdetails of example configuration and operation of particular portions ofthe FIG. 1 system.

FIG. 4 is a screenshot that illustrates an example of a user interfaceof an application (such as a media jukebox application) on a hostcomputer that may be provided to accomplish an account matching betweena portable media player and a workout data service.

FIG. 5 schematically illustrates an example of signals involved in aninteraction between a host computer and a workout data service withregard to account setup (FIG. 4) and use of an account access token.

FIGS. 6 a and 6 b illustrate, in accordance with some examples, datastructures that may be maintained within a portable media player, usableto correlate measurement and/or control of physical activity withplayback of media.

FIG. 7 is a flowchart illustrating an example of processing within ahost computer to process user behavior information and other data in theFIG. 6 data structures.

FIG. 8 illustrates a user interface screen, caused to be presented byprocessing within the host computer, to display an indication of somephysiologic data.

FIG. 9 illustrates a user interface screen, caused to be presented byprocessing within the host computer, to allow a user to choose betweenphysiologic data gathering devices with which the portable media playerhas been paired.

DETAILED DESCRIPTION

FIG. 1 illustrates an example of a system 100, including a portablemedia player 104, generally usable for, among other things, monitoringand/or controlling user exercise or other activity or physiology.Referring to FIG. 1, user exercise data is communicated (in thisexample, wirelessly) from a data gathering device 102, configured forgathering physiological data of a user (such as a sensor to sense thefoot motion of a user), to the portable media player 104. In oneexample, the wireless communication is via an accessory 106, configuredto selectively attach to a data port of the portable media player 104.An example of the accessory 106, and the interoperation of the accessorywith the portable media player 104, is described in some detail inrelated U.S. patent application Ser. No. ______, filed May 22, 2006, andentitled “COMMUNICATION PROTOCOL FOR USE WITH PORTABLE ELECTRONICDEVICES” [Att.Dkt.No.: APL1P492/P4400US1], referenced above, andincorporated by reference herein, in the section entitled “CrossReference to Related Applications.”

In operation, while a user 108 is exercising, physiological data of theuser is accumulated by the data gathering device 102 and is providedwirelessly (via radio frequency waves 110, in one example) to theportable media player 104. Meanwhile, cues relative to the exercise(e.g., audio cues) as indicated by exercise templates, are beingprovided from the portable media player 104 to the user 108 (e.g., via awire 112 and headphones 114). In addition to providing the cues relativeto the exercise, the portable media player 104 may also be configured toprovide playback of media (such as audio media) to the user 108 (e.g.,like with the audio cues, via the wire 112 and headphones 114).

The playback of media may be coordinated with the exercise cues. Forexample, the playback of media may be using a playlist such as createdusing the iTunes® software application, provided by Apple Computer,Inc., running on a host computer 116 connectable to the portable mediaplayer 104. The playlists may be incorporated with, or corresponded to,the exercise templates on which the exercise cues are based.

Going in the direction from the portable media player 104 to the hostcomputer 116, the portable media player 104 is configured to providephysiologic data to a workout data service 118, for storage 122, via thehost computer 116 and a network 120 such as the internet. In someexamples, the host computer 116 operates substantially as a conduit forproviding the physiologic data to the workout data service 118 forstorage 122. In other examples, the host computer 116 performs someprocessing on the physiologic data, temporarily stores the physiologicdata for later forwarding (e.g., during a temporary loss of connectionbetween the host computer 116 and the service 118 via the network 120),or both.

In yet other examples, not explicitly represented in FIG. 1, thephysiological data is never or is only selectively provided to a servicesuch as the workout data service 118. That is, the physiologic data maybe maintained in storage on the portable media player 104, on the hostcomputer 116, on both or on neither.

In still other examples, the physiological data is provided from theportable media player 104 to the workout data service 118 without beingprovided to a host computer such as the host computer 116. For example,the portable media player 104 may be incorporated into or, may beincorporated with, a telephone or other communication device that isconnectable (e.g., wirelessly) to the workout data service 118.

With regard to the workout data service 118 and storage 122, in someexamples, the physiologic data is processed at the workout data service118. In one example, the physiologic data from one user is processed inview of physiologic data from other users to, for example, compare theusers in terms of the physiologic data. In another example, thephysiologic data is processed at the workout data service 118 todetermine a suggested template change. For example, based on theprocessing at the workout data service 118, it may be suggested tochange the clues to provide motivation at a particular portion of theworkout. As another example, based on playlists associated with thatworkout by other users, a different playlist (or changes to theplaylist) may be suggested for a particular workout.

FIG. 2. is a flowchart 200 illustrating an example of steps, mostlywithin the host computer 116, to accomplish transfer of physiologic databetween the portable media player 104 and the workout data service 118.At step 202, it is determined whether the accessory 106 has beenconnected to the portable media player 104, which would allow thephysiological data to be received by the portable media player from thedata gathering device 102.

The determination of whether the accessory 106 has been connected is, inone example, via configuration data that is provided to the hostcomputer 116 when the portable media player 104 and the host computer116 are connected, in a portion of a handshake protocol in which theportable media player 104 provides information to the host computer 116regarding characteristics, capabilities and/or activities of theportable media player 104. In other examples, the accessory 106 is oneof a plurality of possible accessories, and the check for the accessory106 is merely part of a check for accessories generally. In yet otherexamples, mentioned below, processing like that in step 202 is notcarried out at all.

If it is determined at step 202 that the accessory 106 has not beenconnected to the portable media player 104, then the FIG. 2 processingends. Otherwise, if it is determined at step 202 that the accessory 106has been connected to the portable media player 104, or if step 202 isnot performed at all, then processing continues at step 204, to matchthe portable media player 104 to an account of the workout data service118. At step 204, a check is made for an account for the user at theworkout data service 118. If it is determined at step 204 that the userdoes not have an account at the workout data service 118, then the step204 processing includes causing interaction with the user to set up anaccount at the workout data service 118. At step 206, the host computeraccesses the physiologic data, if any, stored in the portable mediaplayer 104 (e.g., from a preset location of storage within the portablemedia player 104) and provides the physiologic data to the workout dataservice 118 to be associated with the user's account. In some examples,if a connection to the workout data service 118 is not available (e.g.,there is no connection between the host computer 116 and the network),then step 206 is prevented from being performed.

The physiologic data may be provided from the portable media player 104to the host computer 116, and further to the workout data service 118,in an XML-formatted file. In some examples, a portion of the provideddata is retained on the portable media player 104, for easy reference bythe user (e.g., during or in preparation for a workout). Communicationbetween the host computer 116 and the workout data service 118 istypically via Secure Socket Layer, using the HTTPS protocol. In oneexample, a portion of the physiologic data is retained in storage of theportable media player 104 (e.g., the last “n” workouts) and can bedisplayed via a user interface of the portable media player 104.Furthermore, while the physiologic data is passed on to the workout dataservice 118 from the host computer 116, the host computer 116 may retainsome or all of the physiologic data to, for example, display the datavia a physiologic data user interface of a music store applicationoperating on the host computer 116. An example user interface display ofthe music store application operation on the host computer 116,including a display of physiologic data, is described later, withreference to FIG. 8.

FIG. 3 is a schematic diagram that, while similar to FIG. 1, illustratesdetails of example configuration and operation of particular portions ofthe FIG. 1 system. As shown in FIG. 3, there are a number of signalsinvolved in interoperation of the portable media player 104 and the hostcomputer 116. A signal 302 is provided from the portable media player104 indicating that the accessory 106, via which the data gatheringdevice 102 (FIG. 1) communicates with the portable media player 104 isor was attached to the portable media player 104. The signal 304represents an attempt by the host computer 116, in response, to accessinformation on the portable media player 104 corresponding to theaccessory 106 (i.e., physiologic data provided to the portable mediaplayer 104 from the data gathering device 102 via the accessory 106).The signal 306 represents the information corresponding to the accessorybeing provided from the portable media player 104 to the host computer116.

In addition, the signal 308 represents feedback of user behaviorinformation relative to the playback of media (which may also correspondto use/operation of the device 102 that provides physiologic data viathe accessory 106) and, concomitantly, relative to the exercise cues.This feedback user behavior information signal 308 may be used to modify(or suggest modifications to) the playlists, templates, or somecombination thereof, based on the user's behavior as indicated by thesignal 308. The modifications and/or suggested modifications may be aresult of processing within the host computer 116 or, as discussedabove, the modifications and/or suggested modifications may be a resultof processing within the workout data service 118 (typically resultingfrom processing of physiologic data from the particular user and relateddata from a community of users, and not just from processing ofphysiologic data and related data from the particular user alone).

It is noted that, as alluded to above, while FIGS. 2 and 3 illustratedetecting whether the accessory 106 is or was connected to the portablemedia player 104, there are other examples in which the host computer116 and the portable media player 104 interoperate such that the hostcomputer 116 can determine whether there may be physiologic data, fromthe data gathering device 102, present on the portable media player tobe provided to the host computer 116. For example, the host computer 116may initiate a check in a predetermined area of the portable mediaplayer 104 storage (e.g., in a particular directory) for physiologicdata for retrieval.

As also shown in FIG. 3, the host computer 116 may communicate with amedia commerce service 310, via the network 120, to accomplish thepurchase of exercise templates, which may also be combined with orotherwise indicate associated playlists. In this way, prepackagedworkout/song mixes may be purchased. While the templates and playlistsare typically purchased, there are circumstances in which the templatesand playlists may be provided without cost (e.g., promotions).

FIG. 4 is a screenshot that illustrates an example of a user interfaceof an application on the host computer 116 that may be provided toaccomplish the account matching (step 204, in FIG. 2) between theportable media player 104 and the workout data service 118. Theapplication may be, for example, a media jukebox application such as theiTunes® application, as discussed above. Referring to FIG. 4, anapplication in the host computer 116 displays a setup screen 400 toaccomplish associating the physiologic data corresponding to aparticular user with an account for that user at the workout dataservice 118. As can be seen from the FIG. 4 screenshot 400, if the userhas a preexisting account with the workout data service 118, the userselects the radio button 402, and provides a login ID 404 and password406 associated with the preexisting account. To register for a newaccount, the user selects the radio button 408, which (after selectingthe “Done” button 412), causes presentation of an account creation pageof the workout data service 118. The user indicates the accountcredentials (such as username and password) so that the physiologic datamay be passed from the host computer 116 to an account at the workoutdata service 118 associated with the user. As also illustrated in FIG.4, an option (radio button 410) is also provided to postpone the accountaccess setup.

Once an account is matched between the portable media player 104 and theworkout data service 118 for physiologic data received by the portablemedia player 104 via the accessory 106, account access credentials maybe saved at the host computer 116 for later use. The account accesscredentials may even be saved at the portable media player 104 (to, forexample, be subsequently provided to the host computer 116 along withphysiologic data). In one example, account access credentials such aslogin ID and password are not themselves saved on either the hostcomputer 116 or the portable media player 104. Rather, the workout dataservice 118 provides back to the host computer 116 an account access“token” that uniquely corresponds to the account access credentials andthat provides only limited access to the workout data service 118, forproviding physiologic data to the workout data service 118. For example,the full account access credentials may provide access to workout dataservice 118 functions such as e-commerce or other security-sensitivefunctions, for which it may be considered undesirable to store accesscredentials on the host computer 116 or on the portable media player104.

FIG. 5 schematically illustrates an example of signals involved in theinteraction between the host computer 116 and the workout data service118 with regard to account setup (FIG. 4) and use of an account accesstoken. The dashed oval 502 represents a portion of the account set upinteraction between the host computer 116 and the workout data service118. Specifically, arrow 504 represents account credentials (such asuser ID and password) being provided from the host computer 116 to theworkout data service 118. An account access token, corresponding to theaccount credentials) is provided back to the host computer 116 from theworkout data service 118. In operation, to provide physiologic data tothe workout data service 118 for storage 122, the account access tokenis provided to the workout data service 118 in conjunction with thephysiologic data. As mentioned above, the workout data service 118 usesthe account access token to grant limited access to the workout dataservice 118, for example, for storing the physiologic data and forassociated analysis and/or viewing functions.

FIGS. 6 a and 6 b illustrate, in accordance with some examples, datastructures that may be maintained within the portable media player 104,usable to correlate measurement and/or control of physical activity withplayback of media. For example, the data structures may include a table602 and a table 652. Each row of the table 602 is indexed by a workoutid, in column 604. A workout id refers to a particular distinguishableworkout, as now discussed. For example, for a particular workout(identified by a workout id), the column 606 (in one example, includingtwo columns 608 and 610, as discussed shortly) includes an indication ofworkout characteristics.

In the FIG. 6 a example, the workout characteristics in column 606include a template designation 608 and a playlist designation 610. Asdiscussed above, a template indicates cues, such as audio cues,corresponding to a particular workout. The playlist designation 610indicates a playlist, defining media playback associated with theworkout.

FIG. 6 b includes a table 652 of playlists maintained in the portablemedia player 104. The column 654 includes the playlist designation foreach playlist. The column 656 indicates the media (typically, songs)corresponding to each playlist. The column 658 includes an indication ofthe user's behavior relative to the playlist. For example, the column658 may indicate a workout id, that indicates a workout during which theuser played the songs of the playlist (or, songs generally, even if notpart of a playlist). As another example, the column 658 may includes anindication of user behavior to override the playlist, such as behaviorto cause songs to be skipped. Referring back to FIG. 3, this userbehavior information may be provided to the host computer 116 such thatprocessing within the host computer 116 modifies playlists, formsplaylists, associates playlists with workouts, or other results asappropriate, based on the user behavior information.

FIG. 7 is a flowchart illustrating an example of processing within thehost computer 116 to process the user behavior information and otherdata in the FIG. 6 data structures. At step 702, it is determined if theactual user behavior is different from the pre-defined playback behaviorindicated by the corresponding playlist. For example, if the userbehavior information indicates that the user overrode the playlist byskipping songs, then processing within the host computer 116, at step704, suggests to the user, via a user interface, to allow playlist to bemodified to correlate to the user behavior.

In some examples, the user behavior information may not be clearlyindicative of a definite suggestion at step 704. For example, the usermay have skipped one song each of ten times of processing the playlist,whereas the user may have skipped a second song only one time ofprocessing the playlist. The suggestions may provide gradations ofsuggestion. For example, it may be strongly suggested to delete thefirst song (the one skipped ten times) from the playlist, whereas it maybe mildly suggested to delete the second song (the one skipped only onetime) from the playlist.

In the next steps shown in the FIG. 7 flowchart, processing is carriedout to suggest associating a playlist with a particular workout, basedon the media playback as controlled manually by the user, during theparticular workout. At step 706, it is determined from the user behaviorinformation if the media playback during a workout (i.e., duringprocessing of a particular workout template by the portable media player104) corresponds to a pre-existing playlist. If so, then processing ofFIG. 7 exits. If it is determined at step 706 that the media playbackduring the workout does not correspond to a pre-existing playlist then,at step 708, a correlation to the workout (i.e., to the template) issuggested. If the user agrees then, at step 710, the media playback isassociated with a playlist, and that playlist is associated with theworkout.

As mentioned above, in some examples, physiologic data provided from aportable media player (such as the portable media player 104) to aworkout data service (such as the workout data service 118) may beprovided through a host computer (such as the host computer 116). FIG. 8illustrates a user interface screen, caused to be presented byprocessing within the host computer, to display an indication of some ofthe physiologic data, namely, the physiologic information of the “lastworkout” in a portion 802 of the user interface screen. (This is just anexample. An indication of other of the physiologic data may bedisplayed.) In addition to the information such as date, distance, paceand calories, the “last workout” information includes an indication 804of the media playlist associated with that workout. It is also of notethat processing within the host computer 116 may also operate toautomatically send the physiologic data to the workout data service 118(e.g., accompanied by the access token discussed above, relative to FIG.5 and the discussion of account set up with the workout data service118), without ongoing user intervention. The user may control whetherthis automatic operation takes place via the check box 806 in the FIG. 8user interface screen. This check box 806 would be initially uncheckedif the user previously chose for physiologic data not to be sent at allto the workout data service 118, e.g. during initial setup (FIG. 4).

While much of the previous description has described methods,applications and systems in the context of a single physiologic datagathering device, it has been mentioned above that there may be morethan one physiologic data gathering device. FIG. 9 illustrates a userinterface screen, caused to be presented by processing within the hostcomputer, to allow a user to choose between physiologic data gatheringdevices with which the portable media player has been paired.

A menu item 902, in this case a pull down menu item, is provided toallow the user to choose which physiologic data gathering devices(listed as “sensors”) for which data is to be considered and/orotherwise handled from within the application executing in the hostcomputer. In FIG. 9, the “Sensor 1” item 904 is checked. In addition, auser interface item 906 is provided to allow the user to edit the nameascribed to a particular physiologic data gathering device, relative tothe application executing in the host computer.

In summary, then, we have described an overall architecture of a system,including a portable media player, generally usable for, among otherthings, monitoring and/or controlling user exercise or other activity orphysiology. In addition, we have described how an application of a hostcomputer, such as a media store application, operates in the context ofsuch a system.

1. A method of operating a computer to interoperate with a portablemedia player, the method comprising: processing signals provided fromthe portable media player to the computer that are indicative of whetheran accessory has been connected to the portable media player, todetermine whether the accessory has been connected to the portable mediaplayer; and based on a determination that the accessory has beenconnected to the portable media player, receiving from the portablemedia player, into the computer, physiologic data of a user that wasprovided to the portable media player from at least one wirelessphysiologic data gathering device, via the accessory.
 2. The method ofclaim 1, wherein: the computer is a computer of a centralized datastorage service.
 3. The method of claim 1, wherein: the computer is ahost computer; and the method further comprises providing at least aportion of the data, received from the portable media player, to atleast one server computer of a centralized data storage service, via anetwork.
 4. The method of claim 3, further comprising: a handshake stepbetween the host computer and the centralized data storage service,regarding an account of the user at the centralized data storage servicefor data from the portable media player.
 5. The method of claim 4,wherein: the handshake step includes the host computer automaticallyproviding an account token to the centralized data storage service, thatuniquely identifies the account of the user at the centralized datastorage service.
 6. The method of claim 5, further comprising: receivingthe account token from the centralized data storage service based on anaccount identification and password provided to the centralized datastorage service in response to the account identification and passwordbeing received by the host computer via a user interface of the hostcomputer.
 7. The method of claim 3, further comprising: by the hostcomputer, providing a token to the centralized data storage service, viathe network, wherein the token uniquely corresponds to a particularaccount for the user on the centralized data storage service; andproviding the at least a portion of the data, received from the portablemedia player, to the centralized data storage service via the network,in association with providing the token to the centralized data storageservice.
 8. The method of claim 1, further comprising: by the hostcomputer, causing display of an indication of at least a portion of thedata received from the portable media player.
 9. The method of claim 1,wherein: the portable media player is included as functionality of asmart wireless telephone device.
 10. The method of claim 1, wherein: theat least one physiologic data gathering device includes a data gatheringdevice that gathers physiologic data indicative of foot activity of auser.
 11. The method of claim 1, wherein: the at least one wirelessphysiologic data gathering device is a plurality of wireless physiologicdata gathering devices.
 12. A method of operating a computer tointeroperate with a portable mobile device, the method comprising:processing signals, provided from the portable mobile device to thecomputer, that are indicative of whether an accessory has been connectedto the portable mobile device, to determine whether the accessory hasbeen connected to the portable mobile device, wherein the portablemobile device is configured to receive physiologic data of a user fromat least one physiologic data gathering device wirelessly, via theaccessory; and controlling a user interface of the computer, based on adetermination that the accessory has been connected to the portablemobile device, such that a user interface of the computer facilitatesreceiving from the portable mobile device, into the computer, thephysiologic data that was provided wirelessly to the portable mobiledevice from the at least one physiologic data gathering device, via theaccessory.
 13. The method of claim 12, wherein: the user interface ofthe computer that facilitates receiving the physiologic data into thecomputer from the portable mobile device further includes functionalityto display an indication of at least a portion of the receivedphysiologic data.
 14. The method of claim 12, further comprising:controlling the user interface of the computer to facilitate functionsof the portable mobile device other than the function to receivephysiologic data into the computer.
 15. The method of claim 12, wherein:the portable mobile device includes functionality of a portable mediaplayer.
 16. The method of claim 14, wherein: the portable mobile deviceincludes functionality of a portable media player; and the functions ofthe portable mobile device other than the function to receivephysiologic data into the computer include the functionality of theportable media player.
 17. The method of claim 12, wherein: the at leastone physiologic data gathering device includes a data gathering devicethat gathers physiologic data indicative of foot activity of a user. 18.The method of claim 12, wherein: the at least one wireless physiologicdata gathering device is a plurality of wireless physiologic datagathering devices; and the method further comprises controlling the userinterface of the computer to control for which of the plurality ofwireless physiologic data gathering devices to facilitate receivingdata, from the portable mobile device.
 19. A method of operating a hostcomputer to interoperate with a portable media player and at least onephysiologic data gathering device coupled to the portable media player,the method comprising: providing, to the portable media player, aworkout template that defines exercise cues to be provided to a user ofthe portable media player; and providing, to the portable media player,a playlist that defines media playback to be provided to the user of theportable media player, wherein the playlist is associated with theworkout template.
 20. The method of operating the host computer of claim19, further comprising: receiving, from the portable media player, anindication of behavior of a user with respect to play back of media inassociation with a particular workout template; and processing theindication of the behavior and, based at least in part thereon,associating a playlist with the particular workout template.
 21. Themethod of claim 20, wherein: associating a playlist with the particularworkout template, based at least in part on processing the indication ofthe behavior, includes modifying an existing playlist associated withthe particular workout template.
 22. The method of claim 19, furthercomprising: interoperating with a media commerce server to purchase andreceive media of the playlist, associated with the workout template. 23.The method of claim 22, further comprising: receiving, from the mediacommerce server, the workout template with which the playlist isassociated.
 24. The method of claim 19, further comprising: receiving,from the portable media player, physiologic data that was provided tothe portable media player from the at least one physiologic datagathering device.
 25. The method of claim 19, wherein the at least onephysiologic data gathering device includes a physiologic data gatheringdevice that gathers physiologic data indicative of foot activity of auser.
 26. A computer-implemented media jukebox application tangiblyembodied in a computer-readable medium, comprising: media handling codemeans to cause a computer to provide media to a portable media player;and physiologic data handling code means, integrated with the mediahandling code means, to cause the computer to interact with the portablemedia player relative to physiologic data for a user received by theportable media player wirelessly from a physiologic data gatheringdevice.
 27. The computer-implemented media jukebox application of claim26, wherein: the physiologic data handling code means includes codemeans to cause the computer to process signals provided from theportable media player to the computer that are indicative of whether anaccessory has been connected to the portable media player, to determinewhether the accessory has been connected to the portable media player;and code means to cause the computer, based on a determination that theaccessory has been connected to the portable media player, receive fromthe portable media player, into the computer, physiologic data of a userthat was provided to the portable media player wirelessly from at leastone physiologic data gathering device, via the accessory.
 28. Theapplication of claim 26, further comprising: data providing code meansto cause the computer to provide at least a portion of the physiologicdata, received from the portable media player, to at least one servercomputer of a centralized data storage service, via a network.
 29. Theapplication of claim 28, further comprising: handshake code means tocause the computer to accomplish a handshake between the host computerand the centralized data storage service, regarding an account of theuser at the centralized data storage service for data from the portablemedia player.
 30. The application of claim 29, wherein: the handshakecode means includes code means to cause the computer to automaticallyprovide an account token to the centralized data storage service, thatuniquely identifies the account of the user at the centralized datastorage service.
 31. The application of claim 30, further comprising:account token handling code means to cause the computer to receive theaccount token from the centralized data storage service based on anaccount identification and password provided to the centralized datastorage service in response to the account identification and passwordbeing received by the host computer via a user interface of the hostcomputer.
 32. The application of claim 26, further comprising:physiologic data display code means to cause the computer to display anindication of at least a portion of the physiologic data received fromthe portable media player.
 33. The application of claim 26, furthercomprising: token providing code means to cause the computer to providea token to the centralized data storage service, via the network,wherein the token uniquely corresponds to a particular account for theuser on the centralized data storage service; and physiologic dataproviding code means to cause the computer to provide at least a portionof the physiologic data, received from the portable media player, to thecentralized data storage service via the network, in association withproviding the token to the centralized data storage service.
 34. Theapplication of claim 26, wherein: the at least one physiologic datagathering device includes a data gathering device that gathersphysiologic data indicative of foot activity of a user.
 35. Theapplication of claim 26, wherein: the at least one wireless physiologicdata gathering device is a plurality of wireless physiologic datagathering devices.